package com.ctshk.rpc.booking.req.system.hotel.add;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.Valid;
import javax.validation.constraints.NotEmpty;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;

/**
 * <p>
 * 系统酒店入住信息
 * </p>
 *
 * @author 谢诗宏
 * @since 2021-03-09
 */
@Data


@ApiModel(value="SupplierSystemOrderHotelCheckInAddReq对象", description="系统酒店入住信息")
public class SupplierSystemOrderHotelCheckInAddReq implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "酒店ID")
    private Long hotelId;

    @ApiModelProperty(value = "酒店名称")
    private String hotelName;

    @ApiModelProperty(value = "产品ID")
    private Long productId;

    @ApiModelProperty(value = "产品名称")
    private String productName;

    @ApiModelProperty(value = "是否含早餐")
    private Integer includeBreakfast;

    @ApiModelProperty(value = "入住日期")
    private LocalDateTime checkInTime;

    @ApiModelProperty(value = "离店日期")
    private LocalDateTime checkOutTime;

    @ApiModelProperty(value = "间数")
    private Integer num;

    @ApiModelProperty(value = "晚数")
    private Integer nightNum;

    @ApiModelProperty(value = "房价")
    private BigDecimal price;

    @ApiModelProperty(value = "房型ID")
    private Long roomTypeId;

    @ApiModelProperty(value = "房型")
    private String roomType;

    @ApiModelProperty(value = "小计")
    private BigDecimal totalPrice;

    @ApiModelProperty(value = "附加服务")
    private String extraService;

    @ApiModelProperty(value = "适合人群")
    private String suitablePeople;

    @ApiModelProperty(value = "客人备注")
    private String customerRemark;

    @ApiModelProperty(value = "供应商备注")
    private String supplierRemark;

    @Valid
    @NotEmpty(message = "酒店信息列表不能为空")
    @ApiModelProperty(value = "酒店旅客列表")
    private List<SupplierSystemOrderHotelTouristAddReq> supplierSystemOrderHotelTouristAddReqList;
}
